_h_a_n_d_l_e DDDDMMMMGGGG777722226666ddddeeeeccccooooddddeeeerrrr structure, created by ddddmmmmGGGG777722226666DDDDeeeeccccooooddddeeeerrrrCCCCrrrreeeeaaaatttteeee((((3333ddddmmmm)))),
specifies the signal processing parameters.
_i_b_u_f pointer to input compressed data buffer, an array of bytes. The
data format is unsigned char (8-bit). The input bitstrem
buffer consists of a multiple of 1, 3, 1, or 5 bytes, for
operations at 16, 24, 32, or 40 kbit/s respectively.
_o_b_u_f pointer to output sample data buffer, an array of short (16
bits) for linear output or unsigned char for A-law or mu-law
output. For linear output, samples are assumed to be two's
complement. Data buffer must be a multiple (the same multiple
as that of input bitstrem buffer) of 4, 8, 2, or 8 for
operations at 16, 24, 32, or 40 kbit/s respectively. This
assumes the sampling rate of 8 kHz.
_n_u_m_S_a_m_p_l_e_s
number of samples to be processed. it must always be a multiple
of 4, 8, 2, or 8 for operations at 16, 24, 32, or 40 kbit/s
ddddmmmmGGGG777722226666DDDDeeeeccccooooddddeeeerrrrSSSSeeeettttPPPPaaaarrrraaaammmmssss((((3333ddddmmmm)))). Output format is indicated by setting
DDDDMMMM____GGGG777722226666____NNNNAAAATTTTIIIIVVVVEEEE____FFFFOOOORRRRMMMMAAAATTTT to AAAAUUUUDDDDIIIIOOOO____EEEENNNNCCCCOOOODDDDIIIINNNNGGGG____UUUULLLLAAAAWWWW, AAAAUUUUDDDDIIIIOOOO____EEEENNNNCCCCOOOODDDDIIIINNNNGGGG____AAAALLLLAAAAWWWW, or
AAAAUUUUDDDDIIIIOOOO____EEEENNNNCCCCOOOODDDDIIIINNNNGGGG____LLLLIIIINNNNEEEEAAAARRRR, respectively for outputting mu-law, A-law, or
linear PCM data, using DMparams and passed to
ddddmmmmGGGG777722226666DDDDeeeeccccooooddddeeeerrrrSSSSeeeettttPPPPaaaarrrraaaammmmssss((((3333ddddmmmm)))). If output mode is AAAAUUUUDDDDIIIIOOOO____EEEENNNNCCCCOOOODDDDIIIINNNNGGGG____LLLLIIIINNNNEEEEAAAARRRR,
the PCM data type will be short. Otherwise, the PCM data type will be
unsigned char. Therefore, obuf is void in the function prototyping.
NNNNOOOOTTTTEEEE
G.726 algorithm was developed for sampling rate of 8 kHz, but could be